// assetDisposeApi.js

import request from '@/utils/request'

const baseUri = '/assetDispose'

const assetDisposeApi = {
  // 获取列表数据
  list({ page, limit, ...others }) {
    return request({
      url: `${baseUri}/list`,
      method: 'get',
      params: {
        page,
        limit,
        ...others
      }
    })
  },

  // 根据ID查找单个资产处置信息
  find(id) {
    return request({
      url: `${baseUri}/find`,
      method: 'get',
      params: { id }
    })
  },

  // 获取所有资产处置信息
  findAll() {
    return request({
      url: `${baseUri}/findAll`,
      method: 'get'
    })
  },

  // 新增资产处置
  add(assetDispose) {
    return request({
      url: `${baseUri}/add`, // 修正了原来的 findAll URL 错误
      method: 'post',
      data: assetDispose
    })
  },

  // 更新资产处置
  update(assetDispose) {
    return request({
      url: `${baseUri}/update`,
      method: 'post',
      data: assetDispose
    })
  },

  // 批量新增资产处置
  batchAdd(assetDisposes) {
    return request({
      url: `${baseUri}/batchAdd`,
      method: 'post',
      data: assetDisposes // 传递资产处置数组
    })
  },

  // 批量更新资产处置
  batchUpdate(assetDisposes) {
    return request({
      url: `${baseUri}/batchUpdate`,
      method: 'post',
      data: assetDisposes // 传递资产处置数组
    })
  },

  // 批量删除资产处置
  batchRemove(ids) {
    return request({
      url: `${baseUri}/batchRemove`,
      method: 'post',
      data: ids
    })
  },

  // 获取固定资产处置认领信息
  findClaimFixed({ page, limit, ...others }) {
    return request({
      url: `${baseUri}/findDisposeFixed`,
      method: 'get',
      params: {
        page,
        limit,
        ...others
      }
    })
  },

  // 根据批量id查找固定资产
  addClaimFixedDetail({ page, limit, assetIds}) {
    return request({
      url: `${baseUri}/addDisposeFixedDetail`,
      method: 'post',
      data: {
        page,
        limit,
        assetIds
      }
    })
  },

  // 获取固定资产处置认领详情
  findClaimFixedDetail({ page, limit, ...others }) {
    return request({
      url: `${baseUri}/findDisposeFixedDetail`,
      method: 'get',
      params: {
        page,
        limit,
        ...others
      }
    })
  },

  // 根据申请单号和assetId删除
  deleteByAssetIds({ applicationNum, assetIds}) {
    return request({
      url: `${baseUri}/deleteByAssetIds`,
      method: 'post',
      data: {
        applicationNum,
        assetIds
      }
    })
  },

  // 根据申请单号和assetId修改
  updateByAssetIds({ applicationNum, assetIds, dispose}) {
    return request({
      url: `${baseUri}/updateByAssetIds`,
      method: 'post',
      data: {
        applicationNum,
        assetIds,
        dispose
      }
    })
  },

  // 根据申请单号查询
  findByNum(applicationNum) {
    return request({
      url: `${baseUri}/findByNum`,
      method: 'get',
      params: {
        applicationNum
      }
    })
  }
}

export default assetDisposeApi
